//script-file.js

//文档加载完成后执行其中的代码
$(function () {
});

function openFile(fileItem) {
    const fileModal = new bootstrap.Modal($('#fileModal'));
    // 将参数存储在一个数据属性中
    $('#fileModal').data('fileItem', fileItem);
    fileModal.show();
}

//图集 当 show 实例方法被调用之后，此事件被立即触发。
$(function () {
    $('#fileModal').on('show.bs.modal', function (event) {
        // 从数据属性中获取参数
        const fileItem = $('#fileModal').data('fileItem');
        const fileUrl = fileItem.fileUrl;  // 获取文件路径
        const streamFileUrl = fileItem.streamFileUrl;  // 获取文件下载地址
        const fullPath = fileItem.fullPath;  // 获取文件路径
        console.log(fileUrl);
        const fileName = fileItem.name;  // 获取文件名


        // 动态生成文件名、路径和按钮
        const fileContentHTML = `
            <h5>${fileName}</h5>
            <p>文件路径: <a href="${fileUrl}" target="_blank">${fullPath}</a></p>
            <button class="btn btn-primary" id="openFileBtn">打开</button>
            <button class="btn btn-success" id="downloadFileBtn">下载</button>
        `;

        // 插入到模态框中
        const fileContentElement = $("#fileContent");
        fileContentElement.html(fileContentHTML);

        // // 动态更新文件名和路径
        // $("#fileName").text(fileName);
        // $("#filePath").html(`文件路径: <a href="${fileUrl}" target="_blank">${fileUrl}</a>`);

        // 打开按钮：点击时在新标签页打开文件
        $("#openFileBtn").on("click", function () {
            window.open(fileUrl, "_blank");
        });

        // 下载按钮：点击时下载文件
        $("#downloadFileBtn").on("click", function () {
            const fileUrl = streamFileUrl;
            const fileName = fileItem.name;

            // 创建一个隐藏的链接元素
            const link = document.createElement("a");
            link.href = fileUrl;  // 文件路径
            link.download = fileName;  // 提供默认的文件名

            // 使链接可点击
            link.target = "_blank";  // 确保在新标签页中下载
            link.style.display = 'none'; // 隐藏链接元素

            // 将链接添加到页面并模拟点击，触发下载
            document.body.appendChild(link);
            link.click();

            // 下载后，移除链接元素
            document.body.removeChild(link);
        });


        // 调整视频大小以适应容器和窗口
        function resizeVideo() {
            const videoContent = document.documentElement
            const video = document.getElementById('vid');
            const containerWidth = videoContent.clientWidth;
            const containerHeight = videoContent.clientHeight;
            video.style.width = containerWidth + 'px';
            video.style.height = containerHeight + 'px';
        }

        window.addEventListener('resize', resizeVideo);
        resizeVideo();
    });
});

//当隐藏时触发
$(function () {
    // 当模态框隐藏时，清空内容
    $('#fileModal').on('hide.bs.modal', function () {
        //$('#fileContent').html(''); // 清空文件内容
        $('#fileModal').data('fileItem', null);  // 清除存储的文件项
    });
});
